home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / C64 / A-Monthly Disks / (c)abk.d64 / hangman for 2 (.txt) < prev    next >
Commodore BASIC  |  2007-02-04  |  5KB  |  168 lines

  1. 10 POKE53281,1:POKE53280,1
  2. 15 SP$(1)="":SP$(2)="":SP$(3)=""
  3. 25 PRINT"[147][144]      [146]  [146] [169] [223][146]  [223] [146]    [146]  [223][169] [146] [169] [223][146]  [223] [146]"
  4. 30 PRINT"        [146]  [146][162] [146]    [146]  [146] [162]  [146][223][169] [146]  [146][162] [146]    [146]"
  5. 35 PRINT"      [146]  [146]  [146]  [146]  [146][223] [146]    [146]  [146]   [146]  [146]  [146]  [146][223] [146]"
  6. 45 PRINT"           BY CAPTAIN RALPH"
  7. 90 SE(0)=1:RESTORE:BO=0:GOTO900
  8. 140 BO=1:IFRN=0GOTO195
  9. 145 NM$(3)=NM$(1):NM$(1)=NM$(2):NM$(2)=NM$(3):NM$(3)=""
  10. 150 FORX=1TOSN:SE(SN)=0:NEXT:SN=0:WD$="":BF$="":V=0:SP=0:K=0:KK=0:F=0:Q=0:J=0
  11. 180 GOTO410
  12. 195 FORPT=1TO2
  13. 200 IFPT=1THENPRINTSP$(1)"PLAYER ONE'S NAME:                   "
  14. 201 IFPT=2THENPRINTSP$(1)"PLAYER TWO'S NAME:                   "
  15. 202 PRINTSP$(1)"(11 CHARACTERS ONLY)"
  16. 205 PRINTSP$(1)TAB(18+SP)"[166]"
  17. 210 GETA$:IFA$<>""GOTO225
  18. 212 FORX=1TO75:NEXT
  19. 215 PRINTSP$(1)TAB(18+SP)"[166][146]":GETA$:IFA$<>""GOTO225
  20. 220 FORX=1TO75:NEXT:GOTO205
  21. 225 IFASC(A$)=13GOTO285
  22. 230 IFASC(A$)=20THENPRINTSP$(1)TAB(18+SP)"  ":SP=SP-1
  23. 235 IFSP<0THENSP=0
  24. 237 IFASC(A$)=20ANDLEN(NM$(PT))=0GOTO205
  25. 240 IFASC(A$)=20THENNM$(PT)=LEFT$(NM$(PT),(LEN(NM$(PT))-1)):GOTO205
  26. 245 IFLEN(NM$(PT))=11GOTO205
  27. 250 IFASC(A$)>64ANDASC(A$)<92GOTO270
  28. 255 IFA$<>" "GOTO205
  29. 260 IFRIGHT$(LEFT$(NM$(PT),LEN(NM$(PT))),1)=" "GOTO205
  30. 265 IFNM$(PT)=""GOTO205
  31. 270 NM$(PT)=NM$(PT)+A$
  32. 275 PRINTSP$(1)TAB(18+SP)A$
  33. 280 SP=SP+1:GOTO205
  34. 285 IFNM$(PT)=""GOTO210
  35. 290 IFRIGHT$(NM$(PT),1)=" "THENNM$(PT)=LEFT$(NM$(PT),(LEN(NM$(PT))-1))
  36. 320 PRINTSP$(1)"IS "NM$(PT)"[146] CORRECT? (Y OR N)        "
  37. 325 GETA$:IFA$=""GOTO325
  38. 330 IFA$="Y"GOTO345
  39. 335 IFA$="N"THENSP=0:NM$(PT)="":GOTO200
  40. 340 GOTO325
  41. 345 SP=0:NEXTPT
  42. 400 PRINTSP$(1)"                                        ";
  43. 405 PRINT"                                        ";
  44. 410 PRINTSP$(1)NM$(1)", PLEASE ENTER A WORD/PHRASE:"
  45. 411 PRINTSP$(1)"(20 CHARACTERS ONLY)"
  46. 412 WD$="":SP=0
  47. 415 PRINTSP$(1)""SPC(SP)"[166]"
  48. 420 GETA$:IFA$=""THENFORX=1TO75:NEXT
  49. 423 IFA$<>""GOTO428
  50. 425 IFA$=""THENPRINTSP$(1)""SPC(SP)"[166][146]"
  51. 427 GETA$:IFA$=""THENFORX=1TO75:NEXT:GOTO415
  52. 428 IFASC(A$)=13ANDWD$=""GOTO415
  53. 429 IFASC(A$)=13GOTO490
  54. 430 IFLEN(WD$)=20ANDASC(A$)<>20GOTO415
  55. 431 IFASC(A$)=20ANDWD$=""GOTO415
  56. 432 IFASC(A$)=20THENPRINTSP$(1)""SPC(SP)"  ":SP=SP-1
  57. 434 IFASC(A$)=20THENWD$=LEFT$(WD$,SP):GOTO415
  58. 435 IFASC(A$)=160ORASC(A$)=32ANDWD$=""GOTO415
  59. 440 IFASC(A$)>64ANDASC(A$)<91GOTO470
  60. 445 IFASC(A$)=32ORASC(A$)=160GOTO450
  61. 449 GOTO415
  62. 450 F=ASC(RIGHT$(LEFT$(WD$,SP),1))
  63. 451 IFF=160ORF=32GOTO415
  64. 470 WD$=WD$+A$
  65. 475 PRINTSP$(1)""SPC(SP)A$
  66. 480 SP=SP+1:GOTO415
  67. 490 PRINTSP$(1)"IS "WD$"[146] RIGHT? (Y OR N)"
  68. 495 GETCR$:IFCR$=""GOTO495
  69. 496 IFCR$="Y"GOTO500
  70. 497 IFCR$="N"GOTO400
  71. 498 GOTO495
  72. 500 IFRIGHT$(WD$,1)=" "THENWD$=LEFT$(WD$,SP-1)
  73. 505 FORX=1TOLEN(WD$)
  74. 510 IFRIGHT$(LEFT$(WD$,X),1)=" "THENSN=SN+1:SE(SN)=X
  75. 515 NEXTX
  76. 520 PRINTSP$(1)"                                        ";
  77. 525 PRINT"                                        ";
  78. 527 PRINT"                                        ";
  79. 530 PRINT"                                        ";
  80. 549 V=19-(LEN(WD$)):IFV<0THENV=0
  81. 550 PRINTSP$(2)SPC(V);
  82. 560 FORX=1TOLEN(WD$):IFRIGHT$(LEFT$(WD$,X),1)=" "THENPRINT" ";:NEXTX
  83. 565 PRINT"[183] ";:NEXTX
  84. 570 PRINTSP$(1)"A B C D E F G H I J K L M N O P Q R S T"
  85. 575 PRINT"U V W X Y Z"
  86. 580 PRINTSP$(2)"GUESS A LETTER, "NM$(2)":"
  87. 600 GETB$:IFB$=""GOTO600
  88. 605 IFASC(B$)>64ANDASC(B$)<91GOTO609
  89. 607 GOTO600
  90. 609 GOTO800
  91. 610 GOTO850
  92. 612 FORX=1TOLEN(WD$)
  93. 615 IFB$=RIGHT$(LEFT$(WD$,X),1)THENK=K+1:KK=KK+1:GOTO625
  94. 620 NEXTX
  95. 621 IFK=0GOTO900
  96. 622 IFKK=LEN(WD$)-SNGOTO1000
  97. 623 K=0:GOTO600
  98. 625 Q=X*2-2
  99. 627 IFSN=0GOTO635
  100. 630 FORY=1TOSN:IFSE(Y)<XTHENQ=Q-1:NEXTY
  101. 635 PRINTSP$(3)""SPC(Q+V)B$
  102. 640 NEXTX
  103. 645 IFK=0GOTO900
  104. 650 IFKK=LEN(WD$)-SNGOTO1000
  105. 655 K=0:GOTO600
  106. 800 IFBF$=""GOTO810
  107. 805 FORP=1TOLEN(BF$):IFB$=RIGHT$(LEFT$(BF$,P),1)GOTO600
  108. 807 NEXTP
  109. 810 BF$=BF$+B$
  110. 815 GOTO610
  111. 850 IFASC(B$)<85GOTO860
  112. 855 GOTO865
  113. 860 PRINTSP$(1)""SPC((ASC(B$)-65)*2)""B$"[146][144]":GOTO612
  114. 865 PRINTSP$(1)""SPC((ASC(B$)-85)*2)""B$"[144][146]":GOTO612
  115. 900 E=53252
  116. 901 POKEE+30,3:POKEE+17,4:POKE2042,13
  117. 905 FORX=0TO62:READA:POKE832+X,A:NEXTX
  118. 910 POKEE,150:POKEE+1,100
  119. 915 POKEE+25,4:POKEE+19,4
  120. 920 POKEE+37,0
  121. 921 IFBO=0GOTO140
  122. 922 J=J+1:IFJ<6GOTO600
  123. 925 PRINTSP$(3)""SPC(V);
  124. 930 FORX=1TOLEN(WD$):IFRIGHT$(LEFT$(WD$,X),1)=" "THENPRINT" ";:NEXTX:GOTO965
  125. 935 PRINTRIGHT$(LEFT$(WD$,X),1)" ";:NEXTX
  126. 965 PRINT""NM$(2)
  127. 967 PRINTSPC(INT(LEN(NM$(2))/2))"LOST..."
  128. 970 PRINT""SPC(25)"PLAY AGAIN?"
  129. 972 PRINTSPC(25)" (Y OR N)"
  130. 975 GETF$:IFF$=""GOTO975
  131. 980 IFF$="N"THENPRINT"[147]":NEW
  132. 985 IFF$="Y"THENRN=1:GOTO10
  133. 990 GOTO975
  134. 1000 PRINT""NM$(2):PRINTSPC(INT(LEN(NM$(2))/2))"WON!!!"
  135. 1010 PRINT""SPC(25)"PLAY AGAIN?":PRINTSPC(25)" (Y OR N)"
  136. 1020 GETF$:IFF$=""GOTO1020
  137. 1025 IFF$="N"THENPRINT"[147]":NEW
  138. 1030 IFF$="Y"THENRN=1:GOTO10
  139. 1035 GOTO1020
  140. 2000 REM *
  141. 2010 DATA31,254,0,31,254,0,28,4,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0
  142. 2015 DATA24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0
  143. 2020 DATA28,0,0,31,255,240,31,255,240
  144. 2025 REM *
  145. 2030 DATA31,254,0,31,254,0,28,4,0,24,14,0,24,10,0,24,14,0,24,4,0,24,0,0,24,0,0
  146. 2035 DATA24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0
  147. 2040 DATA28,0,0,31,255,240,31,255,240
  148. 2045 REM *
  149. 2050 DATA31,254,0,31,254,0,28,4,0,24,14,0,24,10,0,24,14,0,24,4,0,24,14,0
  150. 2055 DATA24,14,0,24,14,0,24,14,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0
  151. 2060 DATA24,0,0,28,0,0,31,255,240,31,255,240
  152. 2065 REM *
  153. 2070 DATA31,254,0,31,254,0,28,4,0,24,14,0,24,138,0,24,206,0,24,100,0,24,62,0
  154. 2075 DATA24,14,0,24,14,0,24,14,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0
  155. 2080 DATA24,0,0,28,0,0,31,255,240,31,255,240
  156. 2085 REM *
  157. 2090 DATA31,254,0,31,254,0,28,4,0,24,14,0,24,138,32,24,206,96,24,100,192
  158. 2095 DATA24,63,128,24,14,0,24,14,0,24,14,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0
  159. 2100 DATA24,0,0,24,0,0,28,0,0,31,255,240,31,255,240
  160. 2105 REM *
  161. 2110 DATA31,254,0,31,254,0,28,4,0,24,14,0,24,138,32,24,206,96,24,100,192
  162. 2115 DATA24,63,128,24,14,0,24,14,0,24,14,0,24,12,0,24,24,0,24,48,0,24,96,0
  163. 2120 DATA24,192,0,24,0,0,24,0,0,28,0,0,31,255,240,31,255,240
  164. 2125 REM *
  165. 2130 DATA31,254,0,31,254,0,28,4,0,24,14,0,24,138,32,24,206,96,24,100,192
  166. 2135 DATA24,63,128,24,14,0,24,14,0,24,14,0,24,14,0,24,27,0,24,49,128,24,96,192
  167. 2140 DATA24,192,96,24,0,0,24,0,0,28,0,0,31,255,240,31,255,240
  168.